package com.shujia.four;

public class VariableDemo2 {

    public static void main(String[] args) {

        // 想要表示一个数字, 9223372036854775808
        // 浮点型: float, double
        // float 末尾要加F, f, 大小写都可以
        // 如果定义的 float 类型的数字超过了int的范围, 都要F, f
        float f = 9223372036854775808F;
        // 9.223372E18, 科学计数法表示, 乘 10 ^ 18次方
        // float单精度, 不能记录所有小数
        System.out.println(f);

        // double双精度, 可能保存更多的小数
        // 如果定义的double类型的数字超过了int的范围, 需要在末尾添加D or d
        double d = 9223372036854775808D;
        System.out.println(d);


        float f1 = 2147483648F;
        double d1 = 2147483640;

        // float 4个字节, int 4个字节,
        // 为什么float 和int 都是4个字节, 但是范围更大?
        // 计算的公示不一样, float, double 使用的是科学计算法, 所以字节相同, 但是范围更大

        // double 浮点型的默认数据类型
        System.out.println(1.23);
        double result = 1.23 + 1;
        // 计算小数, 得到的结果是默认数据类型, 也就是double
        // float result = 1.23 + 1;// 报错
        System.out.println(result);

    }
}
